package com.rc.saas.tenant.service.operator;

import com.github.pagehelper.PageInfo;
import com.rc.saas.tenant.base.BaseSearch;
import com.rc.saas.tenant.base.BaseService;
import com.rc.saas.tenant.common.vo.TResponse;
import com.rc.saas.tenant.mapper.operator.TenantOperatorStationMapper;
import com.rc.saas.tenant.model.elec.ElecStation;
import com.rc.saas.tenant.model.operator.TenantOperatorStation;
import com.rc.saas.tenant.model.operator.TenantOperatorStationExample;
import com.rc.saas.tenant.model.tenant.TenantUser;
import com.rc.saas.tenant.vo.elec.ElecStationResult;
import com.rc.saas.tenant.vo.elec.TenantOperatorStationVo;

import java.util.List;

/**
 * @author frog
 * @date 2021/6/23
 */
public interface TenantOperatorStationService extends BaseService<Long, TenantOperatorStation, TenantOperatorStationExample, TenantOperatorStationMapper> {
    PageInfo<TenantOperatorStationVo> pageTenantOperatorStation(BaseSearch baseSearch, Long elecStationId);

    List<Long> listElecStationIdByTenantOperator(String tenantCode, String tenantOperatorCode);

    List<TenantOperatorStationVo> listOperatorByStationId(Long elecStationId);

    TResponse saveAccountSetting(String tenantType, String tenantOperatorCode, TenantUser user, ElecStation elecStation);

    List<ElecStationResult> listElecStationByTenantOperator(String tenantOperatorCode);

    TenantOperatorStation selectOperatorStationId(Long elecStationId, String tenantOperatorCode);

    int countByOperatorStation(String tenantCode);
}
